﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.Sql;
using System.Collections.Concurrent;
using System.Data.Odbc;
using System.Runtime.InteropServices;
namespace QuanLyQuangCao
{
    public partial class frmDangKy_Edit : Form
    {
        public static frmDangKy_Edit Edit;
        
        SqlConnection Conn = new SqlConnection(C_Conn.Connection);
        public SqlDataAdapter da ;//= new SqlDataAdapter();
        public DataSet ds = new DataSet();
        public DataTable dt = new DataTable();
        public BindingSource bds = new BindingSource();       
        
        public frmDangKy_Edit()
        {
            Edit = this;
            InitializeComponent();
        }      
        private void frmNewDangKy_Load(object sender, EventArgs e)
        {
            FillData();
        }        

        private void btAccept_Click(object sender, EventArgs e)
        {
            Conn.Open();
            if (frmDangKy_View.View.bButton == "Them")
            {             
                        
                string sqlInsert = @"INSERT INTO DangKyQuangCao(Ma_Khach, Ma_Loai, Gia_mot_Ky, So_Ky_Dang, Ngay_Bat_Dau, Ma_Nhan_Vien) " +
                                    "VALUES (@Ma_Khach, @Ma_Loai, @Gia_Mot_Ky, @So_Ky_Dang, @Ngay_Bat_Dau, @Ma_Nhan_Vien)";
                        
                        SqlCommand cmdInsert = new SqlCommand(sqlInsert, Conn);

                        cmdInsert.Parameters.Add("@Ma_Khach", SqlDbType.NVarChar, 10);
                        cmdInsert.Parameters.Add("@Ma_Loai", SqlDbType.NVarChar, 5);
                        cmdInsert.Parameters.Add("@Gia_Mot_Ky", SqlDbType.Int);
                        cmdInsert.Parameters.Add("@So_Ky_Dang", SqlDbType.Int);
                        cmdInsert.Parameters.Add("@Ngay_Bat_Dau", SqlDbType.Date);
                        cmdInsert.Parameters.Add("@Ma_Nhan_Vien", SqlDbType.NVarChar, 10);

                        //cmdInsert.Parameters["@Ma_Khach"].Value = dgvDangKy_Edit[1, i].Value.ToString();
                        cmdInsert.Parameters["@Ma_Khach"].Value = cboMa_Khach.SelectedValue.ToString().Trim();
                        cmdInsert.Parameters["@Ma_Loai"].Value = cboMa_Loai.SelectedValue.ToString().Trim();
                        cmdInsert.Parameters["@Gia_Mot_Ky"].Value = cboGia_Mot_Ky.SelectedValue.ToString().Trim();
                        cmdInsert.Parameters["@So_Ky_Dang"].Value = txtSo_Ky_Dang.Text;
                        cmdInsert.Parameters["@Ngay_Bat_Dau"].Value = dteNgay_Bat_Dau.Text;
                        cmdInsert.Parameters["@Ma_Nhan_Vien"].Value = cboMa_Nhan_Vien.SelectedValue.ToString().Trim();

                        cmdInsert.ExecuteNonQuery();                                       

                MessageBox.Show("Đã thực hiện xong", "Thông báo", MessageBoxButtons.OK);
                this.Close();
                CapNhat();
            }

            if (frmDangKy_View.View.bButton == "Sua")
            {                
                //Xoa dong du lieu cu
                string sqlXoa = @"DELETE FROM DangKyQuangCao WHERE Ma_Dang_Ky = @Ma_Dang_Ky";
                SqlCommand cmdXoa = new SqlCommand(sqlXoa, Conn);
                cmdXoa.Parameters.Add("@Ma_Dang_Ky", SqlDbType.Int);                
                cmdXoa.Parameters["@Ma_Dang_Ky"].Value = txtMa_Dang_Ky.Text;
                cmdXoa.ExecuteNonQuery();

                //Insert dong du lieu moi
                string sqlInsert = @"INSERT INTO DangKyQuangCao(Ma_Khach, Ma_Loai, Gia_mot_Ky, So_Ky_Dang, Ngay_Bat_Dau, Ma_Nhan_Vien) " +
                                    "VALUES (@Ma_Khach, @Ma_Loai, @Gia_Mot_Ky, @So_Ky_Dang, @Ngay_Bat_Dau, @Ma_Nhan_Vien)";
                SqlCommand cmdInsert = new SqlCommand(sqlInsert, Conn);

                cmdInsert.Parameters.Add("@Ma_Khach", SqlDbType.NVarChar, 10);
                cmdInsert.Parameters.Add("@Ma_Loai", SqlDbType.NVarChar, 5);
                cmdInsert.Parameters.Add("@Gia_Mot_Ky", SqlDbType.Int);
                cmdInsert.Parameters.Add("@So_Ky_Dang", SqlDbType.Int);
                cmdInsert.Parameters.Add("@Ngay_Bat_Dau", SqlDbType.Date);
                cmdInsert.Parameters.Add("@Ma_Nhan_Vien", SqlDbType.NVarChar, 10);

                cmdInsert.Parameters["@Ma_Khach"].Value = cboMa_Khach.SelectedValue.ToString().Trim();
                cmdInsert.Parameters["@Ma_Loai"].Value = cboMa_Loai.SelectedValue.ToString().Trim();
                cmdInsert.Parameters["@Gia_Mot_Ky"].Value = cboGia_Mot_Ky.SelectedValue.ToString().Trim();
                cmdInsert.Parameters["@So_Ky_Dang"].Value = txtSo_Ky_Dang.Text;
                cmdInsert.Parameters["@Ngay_Bat_Dau"].Value = dteNgay_Bat_Dau.Text;
                cmdInsert.Parameters["@Ma_Nhan_Vien"].Value = cboMa_Nhan_Vien.SelectedValue.ToString().Trim();

                cmdInsert.ExecuteNonQuery();
                Conn.Close();

                MessageBox.Show("Đã thực hiện xong", "Thông báo", MessageBoxButtons.OK);
                this.Close();
                CapNhat();
            }
        }       
        private void btCancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }
        private void FillData()
        {
            //Ma_Khach
            cboMa_Khach.Focus();

            string sql = @"SELECT * FROM KhachHang";
            da = new SqlDataAdapter(sql, Conn);
            da.Fill(ds, "KhachHang");

            cboMa_Khach.DataSource = ds.Tables["KhachHang"];
            cboMa_Khach.DisplayMember = "Ten_Khach";
            cboMa_Khach.ValueMember = "Ma_Khach";            

            //Ma_Loai
            string sql1 = @"SELECT * FROM LoaiQuangCao";
            da = new SqlDataAdapter(sql1, Conn);
            da.Fill(ds, "LoaiQuangCao");

            cboMa_Loai.DataSource = ds.Tables["LoaiQuangCao"];
            cboMa_Loai.DisplayMember = "Ghi_Chu";
            cboMa_Loai.ValueMember = "Ma_Loai";            
            //Gia_Mot_Ky            

            cboGia_Mot_Ky.DataSource = ds.Tables["LoaiQuangCao"];
            cboGia_Mot_Ky.DisplayMember = "Gia_Mot_Ky";
            cboGia_Mot_Ky.ValueMember = "Gia_Mot_Ky";            

            //Ma_Nhan_Vien
            string sql2 = @"SELECT * FROM NhanVien";
            da = new SqlDataAdapter(sql2, Conn);
            da.Fill(ds, "NhanVien");

            cboMa_Nhan_Vien.DataSource = ds.Tables["NhanVien"];
            cboMa_Nhan_Vien.DisplayMember = "Ten_Nhan_Vien";
            cboMa_Nhan_Vien.ValueMember = "Ma_Nhan_Vien";            
        }        
        private void CapNhat()  
        {
            //Cap nhat lai du lieu cho frmDangKy_View
            dt.Clear();
            string chuoi = @"SELECT Ma_Dang_Ky AS [Mã Đăng Ký], Ma_Khach AS [Mã Khách], Ma_loai AS [Mã Loại], Gia_Mot_Ky AS [Giá Một Kỳ], So_Ky_Dang AS [Số Kỳ Đăng], Ngay_Bat_Dau AS [Ngày Bắt Đầu], Ma_Nhan_Vien AS [Mã Nhân Viên] FROM DangKyQuangCao";
            da = new SqlDataAdapter(chuoi, Conn);
            //da.Fill(ds, "DangKyQuangCao");
            da.Fill(dt);
            //dt = ds.Tables["DangKyQuangCao"];

            frmDangKy_View.View.bds.DataSource = dt;
            frmDangKy_View.View.Update(frmDangKy_View.View.bds);
        }        
    }
}
